GET http://localhost:8000/demo/

###

POST http://localhost:8000/demo/

###

GET http://localhost:8000/democlass/

###

POST http://localhost:8000/democlass/

###

GET http://localhost:8000/weapon/1/

###
GET http://localhost:8000/coments/

# Создадим новый коментарий
###
POST http://localhost:8000/coments/
Content-Type: application/json

{
    "user": 1,
    "text": "text from rest client"
}

# Получение коментария с конкретным идентификатором
###
GET http://localhost:8000/coments/2/

# Заменим тексе коментария с id=2 на новый
###
PATCH http://localhost:8000/coments/2/
Content-Type: application/json

{
    "text": "new text"
}

# Удаление коментария с конкретным идентификатором
###
DELETE http://localhost:8000/coments/2/

# Фильтрация коментария по параметру
###
GET http://localhost:8000/coments/?user=1

# Поисковая Фильтрация коментария
###
GET http://localhost:8000/coments/?search=demo

# Упорядочивание
###
# GET http://localhost:8000/coments/?ordering=-id
GET http://localhost:8000/coments/?ordering=-created_at,-id

# Пагинация в DRF
###
GET http://localhost:8000/coments/?page=2

###
GET http://localhost:8000/coments/?offset=2&limit=3

# offset - с какого объекта начинать
# limit - сколько объектов отображать

# ---------------------------------------------------------------
# Разделение доступа in DRF
# ---------------------------------------------------------------

###
# Получение сета(набора) всех объявлений
GET http://localhost:8000/avd/
Authorization: Token 81c2d6dd5b4f6da925d8c4099ef4763fe4b6e0fe

###
# Создание объявления
POST http://localhost:8000/avd/
Content-Type: application/json
# Создаем токен в панеле администратора если пользователь уже существует
Authorization: Token 81c2d6dd5b4f6da925d8c4099ef4763fe4b6e0fe

# {
#     "user": 1,
#     "text": "Объявление"
# }

# При первом запуске будет ошибка так как
# мы не создали ниодного пользователя
# Для этого python manage.py createsuperuser 
# У этого API есть проблемма безопасности так как любой
# может подставить цифру 1 по ключу user
# именно эту проблемму аутентификация и авторизация
# Мы не будем явно передавать пользователя (закоментим user": 1,)
# а он должен браться из спец.параметров хранящихся самим сервером
# нам нужно только подтвердить свою личность
# за подтверждение личности отвечает АУТЕНТИФИКАЦИЯ - настроим ее в DRF
# идем в settings.py и 
# 1. в INSTALLED_APPS = ['rest_framework_authtoken'] и применяем миграцию
# 2. в REST_FRAMEWORK = {'DEFAULT_AUTHENTICATION_CLASSES': ['rest_framework.authentication.TokenAuthentication',]}
# 3. генерируем токен в админ панели 
# 4. вставляем его в параметр Authorization выше
# 5. передаем пользователя с этим токеном в сериализатор 
# идем во ViewSet и переопределяем там метод perform_create(), или update_create() и пр.
# в зависимости от того что нам нужно в запросе

{
    "text": "Объявление3"
}

###
# Удаление объявления
DELETE http://localhost:8000/avd/4/
Authorization: Token 81c2d6dd5b4f6da925d8c4099ef4763fe4b6e0fe

###
GET http://localhost:8000/avd/
Authorization: Token 0a4e185260ef0f09def326f64f6e8d59d1121cc6
